#ifndef VIRTUAL_DRIVER_H
#define VIRTUAL_DRIVER_H
#include "../Base/Driver.hpp"
#include "Camera.hpp"

class VirtualDriver : public BaseDriver {
  const static std::string CameraUUID;
  VirtualCamera *camera;

public:
  VirtualDriver();
  virtual ~VirtualDriver();
  /**
   * @brief 获取相机列表
   */
  virtual std::vector<std::pair<std::string, BaseCamera *>>
  GetCameraList() override final;
  /**
   * @brief 相机下线事件处理
   *
   * @param uuid 相机UUID
   */
  virtual void CameraOffline(const std::string &uuid) override final;
};

#endif
